package com.ruoyi.coal.modules.coalpile.domain;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;

@TableName("cp_coal_yard_history")
public class CoalYardHistoryEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.AUTO)
    @ApiModelProperty("历史数据id")
    private Integer id;

    @ApiModelProperty("文件地址")
    private String url;

    @ApiModelProperty("扫描时间")
    private Date time;

    @ApiModelProperty("煤场id")
    private Integer coalYardId;

    @ApiModelProperty("高位点id")
    private Integer maxPoint;

    @ApiModelProperty("低位点id")
    private Integer minPoint;

    @TableLogic(value = "1", delval = "0")
    @TableField(fill = FieldFill.INSERT)
    @ApiModelProperty(value = "逻辑删除(0:删除 1:保存)", hidden = true)
    private Integer del;

    @ApiModelProperty("体积")
    @TableField(exist = false)
    private Double volume;

    private Integer measureType;

    public void setId(Integer id) {
        this.id = id;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public void setTime(Date time) {
        this.time = time;
    }

    public void setCoalYardId(Integer coalYardId) {
        this.coalYardId = coalYardId;
    }

    public void setMaxPoint(Integer maxPoint) {
        this.maxPoint = maxPoint;
    }

    public void setMinPoint(Integer minPoint) {
        this.minPoint = minPoint;
    }

    public void setDel(Integer del) {
        this.del = del;
    }

    public void setVolume(Double volume) {
        this.volume = volume;
    }

    public void setMeasureType(Integer measureType) {
        this.measureType = measureType;
    }

    public boolean equals(Object o) {
        if (o == this)
            return true;
        if (!(o instanceof com.ruoyi.coal.modules.coalpile.domain.CoalYardHistoryEntity))
            return false;
        com.ruoyi.coal.modules.coalpile.domain.CoalYardHistoryEntity other = (com.ruoyi.coal.modules.coalpile.domain.CoalYardHistoryEntity)o;
        if (!other.canEqual(this))
            return false;
        Object this$id = getId(), other$id = other.getId();
        if ((this$id == null) ? (other$id != null) : !this$id.equals(other$id))
            return false;
        Object this$url = getUrl(), other$url = other.getUrl();
        if ((this$url == null) ? (other$url != null) : !this$url.equals(other$url))
            return false;
        Object this$time = getTime(), other$time = other.getTime();
        if ((this$time == null) ? (other$time != null) : !this$time.equals(other$time))
            return false;
        Object this$coalYardId = getCoalYardId(), other$coalYardId = other.getCoalYardId();
        if ((this$coalYardId == null) ? (other$coalYardId != null) : !this$coalYardId.equals(other$coalYardId))
        return false;
        Object this$maxPoint = getMaxPoint(), other$maxPoint = other.getMaxPoint();
        if ((this$maxPoint == null) ? (other$maxPoint != null) : !this$maxPoint.equals(other$maxPoint))
            return false;
        Object this$minPoint = getMinPoint(), other$minPoint = other.getMinPoint();
        if ((this$minPoint == null) ? (other$minPoint != null) : !this$minPoint.equals(other$minPoint))
            return false;
        Object this$del = getDel(), other$del = other.getDel();
        if ((this$del == null) ? (other$del != null) : !this$del.equals(other$del))
            return false;
        Object this$volume = getVolume(), other$volume = other.getVolume();
        if ((this$volume == null) ? (other$volume != null) : !this$volume.equals(other$volume))
            return false;
        Object this$measureType = getMeasureType(), other$measureType = other.getMeasureType();
        return !((this$measureType == null) ? (other$measureType != null) : !this$measureType.equals(other$measureType));
    }

    protected boolean canEqual(Object other) {
        return other instanceof com.ruoyi.coal.modules.coalpile.domain.CoalYardHistoryEntity;
    }

    public int hashCode() {
        int PRIME = 59;
        int result = 1;
        Object $id = getId();
        result = result * 59 + (($id == null) ? 43 : $id.hashCode());
        Object $url = getUrl();
        result = result * 59 + (($url == null) ? 43 : $url.hashCode());
        Object $time = getTime();
        result = result * 59 + (($time == null) ? 43 : $time.hashCode());
        Object $coalYardId = getCoalYardId();
        result = result * 59 + (($coalYardId == null) ? 43 : $coalYardId.hashCode());
        Object $maxPoint = getMaxPoint();
        result = result * 59 + (($maxPoint == null) ? 43 : $maxPoint.hashCode());
        Object $minPoint = getMinPoint();
        result = result * 59 + (($minPoint == null) ? 43 : $minPoint.hashCode());
        Object $del = getDel();
        result = result * 59 + (($del == null) ? 43 : $del.hashCode());
        Object $volume = getVolume();
        result = result * 59 + (($volume == null) ? 43 : $volume.hashCode());
        Object $measureType = getMeasureType();
        return result * 59 + (($measureType == null) ? 43 : $measureType.hashCode());
    }

    public String toString() {
        return "CoalYardHistoryEntity(id=" + getId() + ", url=" + getUrl() + ", time=" + getTime() + ", coalYardId=" + getCoalYardId() + ", maxPoint=" + getMaxPoint() + ", minPoint=" + getMinPoint() + ", del=" + getDel() + ", volume=" + getVolume() + ", measureType=" + getMeasureType() + ")";
    }

    public Integer getId() {
        return this.id;
    }

    public String getUrl() {
        return this.url;
    }

    public Date getTime() {
        return this.time;
    }

    public Integer getCoalYardId() {
        return this.coalYardId;
    }

    public Integer getMaxPoint() {
        return this.maxPoint;
    }

    public Integer getMinPoint() {
        return this.minPoint;
    }

    public Integer getDel() {
        return this.del;
    }

    public Double getVolume() {
        return this.volume;
    }

    public Integer getMeasureType() {
        return this.measureType;
    }
}